package com.xiaoq.sites.repository;

import com.xiaoq.sites.entity.InterpreterCalendarEntity;

import java.util.List;

public interface IInterpreterCalendarRepository {

	List<InterpreterCalendarEntity> findByInterpreterId(String interpreterId);

	/**
	 * 保存讲解员日历
	 * @param interpreterCalendarEntity
	 * @return
	 */
	boolean save(InterpreterCalendarEntity interpreterCalendarEntity);

	/**
	 *  查找一段时间讲解员的日历
	 * @param interpreterId 讲解员ID
	 * @param sitesId 景区ID
	 * @param beginTime 开始时间
	 * @param endTime 结束时间
	 * @return
	 */
	List<InterpreterCalendarEntity> findInterpreterCalendarBetweenTimes(String interpreterId, String sitesId, Long beginTime, Long endTime);

	/**
	 * @param orderIdList 讲解员订单 List
	 * @return
	 */
	List<InterpreterCalendarEntity> getInterCalendarListByOrderIds(List<String> orderIdList);

	/**
	 * @param orderId 讲解员订单 InterpreterCalendarEntity
	 * @return
	 */
	InterpreterCalendarEntity getInterCalendarByOrderId(String orderId);

	/**
	 *  讲解员待确认讲解的数量
	 * @param userId
	 * @return
	 */
	long getInterWaitConfirmCountByUserId(String userId);


	/**
	 *  根据orderId更新讲解员日历
	 * @param interpreterCalendarEntity
	 * @return
	 */
	boolean updateInterCalendarByOrderId(InterpreterCalendarEntity interpreterCalendarEntity);

	/**
	 *  根据id更新讲解员日历
	 * @param interpreterCalendarEntity
	 * @return
	 */
	boolean updateInterCalendarById(InterpreterCalendarEntity interpreterCalendarEntity);

}
